package com.mdinfo.system.service;

import com.mdinfo.base.common.bean.CommonResult;
import com.mdinfo.base.common.bean.DataGrid;
import com.mdinfo.system.param.DeptParam;
import com.mdinfo.system.vo.DeptVo;

import java.util.List;

/**
 * Created by Administrator on 2017/11/29.
 */
public interface IDeptService {

    /**
     * 添加部门
     */
    CommonResult<Void> add(DeptParam.AddParam param);

    /**
     * 修改部门
     */
    CommonResult<Void> modify(DeptParam.ModifyParam param);

    /**
     * 删除部门
     */
    CommonResult<Void> delete(DeptParam.DeleteParam param);

    /**
     * 获取部门列表(本部门及下属部门)
     */
    CommonResult<DataGrid<DeptVo.ListOwnVo>> listOwn(DeptParam.ListOwnParam param);

    /**
     * 获取部门树(本部门及下属部门)
     */
    CommonResult<List<DeptVo.ListTreeOwnVo>> listTreeOwn();


    /**
     * 获取当前用户可用的部门id集合
     */
    List<Integer> myDeptIdList(int deptId);
}
